In today's computing environments, client computers typically have access to one or more storage systems that may be local or remotely accessed via a channel or network. The storage available to the client is typically presented as volumes, or logical units.
It is often necessary to move, or “migrate”, the data from one volume to another volume. Data migrations are transparent to the clients; that is, the clients continue to access the same logical drive although the drive data is being moved from one physical storage location to another. A migration may be necessary when data must be moved to newly attached storage, or when node failures occur, or to optimize storage space usage and/or performance. Data migration is a time consuming process because the volumes tend to be quite large. Further, if the node controlling the migration fails, data can be permanently lost. Migrations can therefore have deleterious performance effects on the systems affected.
There is a need for a higher performance data migration solution than those existing today, and a further need for a data migration solution that is resistant to node failures.